﻿@model Web.Models.DeviceTestsInfo
<p>@ViewBag.DeviceName</p>
@{
    Web.Models.DeviceTestsInfo dti = new Web.Models.DeviceTestsInfo();
    dti.DeviceName = ViewBag.DeviceName;
}
@foreach (var item in dti.testResults)
{
    if (item as Domain.NetworkService.ResolveResult != null)
    {
        var rr = item as Domain.NetworkService.ResolveResult;
        IPAddress justForCheck;
        if (!IPAddress.TryParse(rr.HostName, out justForCheck))
        {
    <div class="ResolveResult">
        @rr.VarDateTime
        @Domain.NetworkService.NetworkTestDescription.NS
        Доменное имя
        @rr.HostName
        соответсвует следующим IP адресам
        <ul>
            @foreach (var ip in rr.Ips)
            {
                <li>@ip</li>
            }
        </ul>
    </div>
        }
        else
        {
    <div class="ResolveResult">
        @rr.VarDateTime
        @Domain.NetworkService.NetworkTestDescription.NS
        Не удалось разрешить IP адрес @rr.Ips.ElementAt(0) в доменное имя.
    </div>
        }
    }
    else if (item as Domain.NetworkService.SnmpResult != null)
    {
        var sr = item as Domain.NetworkService.SnmpResult;
        if (sr.Status.Equals(Domain.NetworkService.ResultStatus.Success))
        {
            if (sr.Variable.Equals(OidNames.System))
            {
    <div class="SnmpResult">
        @sr.VarDateTime
        @Domain.NetworkService.NetworkTestDescription.SNMP
        @sr.Variable
        @{ var snmpOutput = new Web.Models.SnmpOutput(sr.Data); }
        <table class="snmpTable">
            @foreach (var snmpOutputItem in snmpOutput.dict)
            {
                <tr>
                    <td>
                        @snmpOutputItem.Key
                    </td>
                    <td>
                        @snmpOutputItem.Value
                    </td>
                </tr>
            }
        </table>
    </div>
            }
            else
            {
    <div class="SnmpResult">
        @sr.VarDateTime
        @Domain.NetworkService.NetworkTestDescription.SNMP
        @sr.Variable
        @sr.Data
    </div>
            }
        }
        else
        {
    <div class="SnmpResult">
        @sr.VarDateTime
        @Domain.NetworkService.NetworkTestDescription.SNMP
        Не удалось получить ответ: @sr.Data
    </div>
        }
    }
    else if (true)
    {
    <div class="AnotherResult">
        @item.ToString(ToStringFormatArgs.CommonSurvey)
    </div>    
    }
}